package com.cloudbroker.bcs.platform.ltb.middle.extservice.usercenter;


import com.cloudbroker.bcs.common.annotation.NoLogin;
import com.cloudbroker.bcs.common.annotation.NoToken;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.request.ifs.*;
import com.cloudbroker.bcs.csvc.lightinvesting.api.vo.response.IFS.*;
import com.cloudbroker.bcs.platform.ltb.bizapi.service.admin.back.UserEntityVO;
import com.cloudbroker.bcs.platform.ltb.bizapi.service.user.back.UsersQueryVo;
import com.cloudbroker.bcs.platform.ltb.middle.entity.UserEntity;
import com.hundsun.jresplus.remoting.impl.annotation.Service;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceParam;

import java.util.List;

/**
 * Created by tianrui on 2016/11/3.
 */

public interface UserCenterService {


    /**
     * 检测用户是否已注册
     * */
    public CheckRegisterVo func_check_register(CheckRegisterForm checkRegisterForm);

    /**
     * 用户中心注册
     * */
    public RegisterVo func_register(RegisterForm registerForm);

    /**
     * 用户中心登录
     * */
    public LoginVo func_login(LoginForm loginForm);

    /**
     * 用户验证码获取
     * */
    public AuthCodeGetVo func_auth_code_get(AuthCodeGetForm authCodeGetForm);

    /**
     * 用户验证码校验
     * */
    public AuthCodeLoginVo func_auth_code_login(AuthCodeLoginForm authCodeLoginForm);

    /**
     * 用户数据更新
     * */
    public UserUpdateVo func_user_update(UserUpdateForm userUpdateForm);

    /**
     * 用户信息获取
     * */
    public UserinfoVo func_userinfo(UserinfoForm userinfoForm);


    /**
     * 用户token检验接口
     * */
    public UserTokenCheckVo func_user_token_check(UserTokenCheckForm userTokenCheckForm);


    /**
     * 用户登出接口
     * */
    public LogoutVo func_logout(LogoutForm logoutForm);

    /**
     * 密码修改
     * */
    public PasswordResetVo func_password_reset(PasswordResetForm passwordResetForm);


    /**
     * 用户信息分页查询
     */
    public UserPageQueryVo func_user_page_query( UserPageQueryForm param);

    /**
     * 投顾保存
     */
    public AdviserSaveVo func_adviser_save(AdviserSaveForm param);

    /**
     * 投顾信息修改
     */
    public AdviserUpdateVo func_adviser_update( AdviserUpdateForm param);

    /**
     * 投顾信息获取
     */
    public AdviserGetVo func_adviser_get(AdviserGetForm param);

    /**
     * 投顾信息分页获取
     */
    public AdviserPageQueryVo func_adviser_page_query( AdviserPageQueryForm param);


    /**
     * 用户密码修改
     */
    public UserUpdatePasswordVo func_user_update_password( UserUpdatePasswordForm param);

    public UsersQueryVo func_users_query( String user_ids);


    public CapitalAccountLoginVo func_capital_account_login(CapitalAccountLoginForm param);


}
